﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using Automaton.DataModel;
using Automaton.EntityTracking;

namespace Automaton.ServiceLibrary
{
    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "AutomatonDataService" in both code and config file together.
    public class AutomatonDataService : IAutomatonDataService
    {
         IRepository AutomatonDataRepository = new Repository(new AutomatonEntities());
        //public Contracts.Results<Device> Select()
        //{
        //    Contracts.Results<Device> results = new Contracts.Results<Device>();
        //    results.GenericList = AutomatonData.Helpers.Devices.Select();
        //    return results;
        //}

        //public Contracts.Results<Device> Select(Guid DeviceID)
        //{
        //    Contracts.Results<Device> results = new Contracts.Results<Device>();
        //    results.GenericType = AutomatonData.Helpers.Devices.Select(DeviceID);
        //    return results;
        //}

        //public Contracts.Results<Device> Select(Contracts.HouseCodes _HouseCode, int Address)
        //{
        //    Contracts.Results<Device> results = new Contracts.Results<Device>();
        //    results.GenericType = AutomatonData.Helpers.Devices.Select(_HouseCode.ToString(), Address.ToString());
        //    return results;
        //}

        //public Contracts.Results<Device> Add(Device _Device)
        //{
        //    Contracts.Results<Device> results = new Contracts.Results<Device>();
        //    results.bResult = AutomatonData.Helpers.Devices.Add(_Device);
        //    return results;
        //}

        //public Contracts.Results<Device> Delete(Device _Device)
        //{
        //    Contracts.Results<Device> results = new Contracts.Results<Device>();
        //    results.bResult = AutomatonData.Helpers.Devices.Delete(_Device);
        //    return results;
        //}

        //public Contracts.Results<Device> Update(Device _Device)
        //{
        //    Contracts.Results<Device> results = new Contracts.Results<Device>();
        //    results.bResult = Automaton.DataModel.Helpers.Devices.Update(_Device);
        //    return results;
        //}

        //public List<Device _Device> DevicesFetch()
        //{
        //    var result = from c in AutomatonDataRepository.GetAll<Device>();
        //    return result;
        //}
    }
}
